import java.util.Arrays;

public class Main {

    public static int jiecheng(int n) {
        if(n==0||n==1){
            return 1;
        }
        return n*jiecheng(n-1);
    }

    public static int sum(int n) {
        if(n==0){
            return 0;
        }
        return jiecheng(n)+sum(n-1);
    }
    public static void main(String[] args) {
        int num=sum(6);
        System.out.println(num);
    }
//    public static int maxint(int x,int y) {
//        return (x>y?x:y);
//    }
//
//    public static double maxd(double x,double y,double z) {
//        double max=0.0;
//        if(x>y){
//            max=x;
//        }
//        if(x<y){
//            max=y;
//        }
//        if(max<z){
//            max=z;
//        }
//        return max;
//    }
//    public static void main(String[] args) {
//        int max1=maxint(3,5);
//        double max2=maxd(4.5,5.6,3.3);
//        System.out.println(max1);
//        System.out.println(max2);
//    }

//    public static int sum(int n) {
//        if(n==1){
//            return 1;
//        }
//        return n+sum(n-1);
//    }
//
//    public static void main(String[] args) {
//        int num=100;
//        int ret=sum(num);
//        System.out.println(ret);
//    }
//    public static int func(int n) {
//        if(n==0||n==1){
//            return 1;
//        }
//        return n*func(n-1);
//    }
//    public static void main(String[] args) {
//        int n=5;
//        int num = func(5);
//        System.out.println(num);
//    }

//    public static int fibo(int n) {
//        if(n<=2) {
//            return 1;
//        }
//        return fibo(n-1)+fibo(n-2);
//    }
//    public static void main(String[] args) {
//        int ret=fibo(30);
//        System.out.println(ret);
//    }

//    public static int printsum(int num) {
//        if(num==0) {
//            return 0;
//        }
//        else {
//            return num%10+printsum(num/10);
//        }
//    }
//    public static void main(String[] args) {
//        int num=12345;
//        int sum = printsum(num);
//        System.out.println("数字"+num+"的数位上面的数字求和的结果就是"+sum);
//    }
//    public static void print(int num) {
//        if(num<10){
//            System.out.print(num+" ");
//        }
//        else{
//            print(num/10);
//            System.out.print(num%10+" ");
//        }
//    }
//    public static void main(String[] args) {
//        int num=1234;
//        print(num);
//    }

//    public static void main(String[] args) {
//        int[][] arr={{1,2,3},{4,5,6}};
//
//        for(int[] temp:arr){
//            for(int x:temp) {
//                System.out.print(x+" ");
//            }
//            System.out.println();
//        }
//        System.out.println();
//
//        System.out.println(Arrays.deepToString(arr));
//
//
//
//        for(int i=0;i<arr.length;i++){
//            for(int j=0;j<arr[i].length;j++){
//                System.out.print(arr[i][j]+" ");
//            }
//            System.out.println();
//        }
//        int[][] arr2=new int[][]{{1,2,3},{4,5,6}};
//        int[][] arr3=new int[2][3];
//
//
//    }

//    public static void reverse(int[] arr){
//        int left=0;
//        int right=arr.length-1;
//        while(left<right){
//            int temp=arr[left];
//            arr[left]=arr[right];
//            arr[right]=temp;
//            left++;
//            right--;
//        }
//    }
//    public static void main(String[] args) {
//        int[] arr={1,2,3,4,5,6,7,8,9};
//        reverse(arr);
//        System.out.println(Arrays.toString(arr));
//    }
}